aBasic C^v^gp}jA

C^v^WindowsLinuxłقړ悤ɍ쐬Ă܂B
JC++łB


Linux    J     gcc 3.4.4
Windows  J     VisualC++6

Windowsł̃RpC@
basic.dsw@VisualC++6ȏŊJĂ

Linuxł̃RpC@
c++LłȂƃRpCł܂
make R}hsĂ




N@

basic filename

ɃC^v^ŎsvȌꂽeLXgt@CnƂɂsł܂



s̍s
vO͈s̕ftHg1024ȓłKv܂B
܂AϐɊi[\ȍő啶ftHg1024ȓłKv܂B
ύXɂ́A
common.h@́@#define MAX_STR_LEN 1024@ύXKv܂B


vOŎgp\ȕϐ

ϐ^64rbg_^ƕ^܂B
ϐсAϐ^̐錾͕Kv܂B
Ă̕ϐ̓O[oXR[v܂B

ź@data[1]@̂悤Ɏw肵܂B
ź@data[1][2]@̂悤Ɏw肵܂̐͂܂B

ȉ̂悤ɔz̓YƂĕw肷邱Ƃł܂
data["aaa"]=1


Ɛl̉Z

̑Zsꂽꍇ͕񂪘AA
lm̉Zsꂽꍇɂ́Al̉Zʂ߂܂B
lƕ̑ZsꂽꍇɂẮAlƂĈAĘA܂B

vO
print 1+1
print 1+"test"
print "test"+1
print "test"+"test"

s
$ ./basic test.txt
2
1test
test1
testtest


vOŎgp\Ȗ

Rg

'Rg

'Ŏn܂镶̓RgƂĈ܂




if  then ߂P else ߂Q

̌ʂ0̏ꍇ͖߂QsAȊOɂ͖߂Ps܂

Eɂ͈ȉ̂̂gpł܂

=	CR[
<	ȂȂ
>	Ȃ菬Ȃ
<=	ȂȂCR[
>=	Ȃ菬ȂCR[
&&	Ah
||	IA
<>	mbgCR[


ẼTv
if 1=1 then print "true" else print "false"
if "test"="test" then print "true" else print "false"
if 1<1 then print "true" else print "false"
if 1>1 then print "true" else print "false"
if 1<=1 then print "true" else print "false"
if 1>=1 then print "true" else print "false"
if 1=1 && 2=1 then print "true" else print "false"
if 1=1 || 2=1 then print "true" else print "false"
if "test"<>"aaaa" then print "true" else print "false"


[v

for x=1 to 10
print x
next x

x1`10܂Ń[v܂
for̃lXg\ł


Wv

goto label

label

gotoɂ胉xɃWv܂
x͖߂ƂėpĂȂłΐ͂܂


Tu[`

gosub label

label
return

gosub߂ɂw肳ꂽxɃWvAreturn߂ɂAWvɕA܂
Tu[`̃lXg\ł


͖

input ϐ

͂vĂ܂A͌ʂϐɊi[܂


o͖

print ""
print ϐ

lʏɏo͂܂


GXP[vV[PX
GXP[vV[PXΉ̒[̂ݑΉ܂

clr
location 1,1

clr߂ɂʂNA܂
location߂ɂJ[\ʂ̎wWɈړ܂


ҋ@

wait

̖߂ƁA1bԃvO~܂


abs

abs ϐ

ϐɊi[ĂĺA_ȉ؂̂ĂāA
absƂϐɌʂi[܂B


shell

shell "notepad test.txt"

w肵vOs܂
svOI܂őҋ@܂


I

end

̖߂ǂݍ܂ꂽ_ŃvOI܂


vOŎgp\Ȋϐ

͏o܂AQƂ݂̂łB
ʏ̕ϐ̂悤ɓǂݏo܂B


擾ł闐ĺ@0`9999@͈̔͂ł

rand



time.year	N
time.mon	
time.day	
time.week	j0Aj1Ƃj킷l
time.hour	
time.min	
time.sec	b


GXP[v

\Ŏn܂鎟̓̕GXP[v܂
\n@͉s\A
\"@"\܂B
\\@\\܂B


񑀍얽
̒𒲂ׂ

len 

ϐ len ɕ̒i[܂
L̏ꍇ 7 łB

a="abcdefg"
len a
print len


̐؂o mid

mid ,؏oJnʒu,؏o

ϐ mid ɐ؂oꂽ񂪊i[܂
؏oJnʒúA̐擪̈ʒułB
L̏ꍇł̌ʂ bcde łB

a="abcdefg"
mid a,1,4
print mid


񂩂lւ̕ϊ val

val ϐ

ϐ̕񂪒lɂȂ܂B
ϊłȂꍇɂ 0 ɂȂ܂B

l當ւ̕ϊ str

str ϐ





200801